At present, motors are used as power sources of various devices, and especially, a DC motor is widely used in OA devices and home electric products by virtue of its simple structure which does not require maintenance works, its reduced rotational unevenness and vibration, and its availability under high-speed and high-accuracy control.
An example of general DC motor control will be described. FIG. 6A is a block diagram showing a velocity control procedure for a general DC motor. This DC motor control is called PID (Proportional Integral and Differential) control or classical control. The procedure will be described.
First, a target velocity to be provided to a control target is given in the form of velocity command 601. FIGS. 6B and 6C show time change of 2 data generally used as the velocity command 601. In FIG. 6B, the target velocity is a constant value from the start, while in FIG. 6C, a velocity is increased at a constant rate to the target velocity.
The velocity command 601 is sent via a motor driver circuit 604 to a motor 605, and a mechanism 606 moves by rotation of the motor. When the movement starts, a velocity calculation circuit 609 calculates a current scanning velocity 607 of the mechanism 606 (e.g. carriage of a printer) from a signal from an encoder sensor 608 attached to the mechanism 606 and a timer included in the printer.
Then, a numerical value, obtained by subtracting the scanning velocity 607 from the velocity command value 601, is delivered, as a velocity error 602 less than the target velocity, to a PID calculation circuit 603, which calculates energy to be provided to the DC motor at that time by a method called PID calculation. The motor driver circuit 604 receives the energy, then changes the duty of motor application voltage as a constant voltage by e.g. pulsewidth modulation (hereinbelow PWM control) to change the pulsewidth of the application voltage. In this manner, the motor driver circuit controls the current value to control the energy to be provided to the DC motor 605, thereby performs velocity control.
In this control system, to realize highly accurate positional control, it is necessary to suppress a velocity immediately before stopping to a minimum velocity. That is, if the velocity immediately before stopping is high, as the mechanism arrives at a stopping target position then overruns by a large amount, high accuracy cannot be ensured without difficulty.
Further, to suppress the velocity immediately before stopping to a low-speed in a stable manner, it is necessary to suppress a velocity further immediately before the above velocity immediately before stopping to a low-speed. That is, generally, as a deceleration profile of the above-described velocity command, a curve which becomes mild as it approaches a stopping position is desirable. For example, Japanese Published Unexamined Patent Application No. 2000-188894 discloses a method using cubic and quintic curves.
However, in a case where the entire deceleration area is controlled with such mild deceleration, an average velocity of the entire deceleration area is reduced as a velocity immediately before stopping is suppressed, and as a result, time required for the deceleration is increased.
That is, it is difficult to suppress a velocity immediately before stopping to improve positioning accuracy and to reduce deceleration time at the same time. This is a problem to be solved upon designing of device using a DC motor.
Further, in the method using cubic and quintic curves in the above publication, if the deceleration immediately before stopping is mild, deceleration immediately after start of the deceleration is also mild. Accordingly, time required for the deceleration is increased, and time until the stopping is increased.
The curve by the above function is point symmetrical with respect to its central point, and the total of deceleration in the first half of the curve indicating the velocity command profile (immediately after start of deceleration) and that in the last half of the curve (immediately before stopping) are equal. This causes the above problem.
However, in actual motor control, as long as a condition for the control target to follow the deceleration control is satisfied, deceleration in a steeper curve, in comparison with that immediately before stopping, can be made immediately after the start of deceleration. This means that sufficient control cannot be made with the above cubic and quintic curves.
Therefore it is difficult to suppress a velocity immediately before stopping to improve positioning accuracy and to reduce deceleration time at the same time. This is a problem to be solved upon designing of device using a DC motor.